Modern electronic devices usually have multiple applications run concurrently. These applications may dispatch I/O requests to access the storage when executed on the operating system.
However, in a traditional system, the I/O scheduler usually uses its own priority scheme to determine the service order of the I/O requests. The I/O scheduler is not aware of the application-level information when scheduling the requests.
For example, when two applications access the storage of a system concurrently, the I/O requests from the two applications may arrive at the I/O scheduler in an interleaving order, and the I/O requests will be served in their arrival order. In such circumstance, both tasks are slowed down, which in turn degrade the overall system throughput.
Therefore, there is a need to provide a data processing method and an associated system with application-level information awareness, such that the I/O requests can be scheduled based on the application-level information.